#include "StdAfx.h"
#include "DocUndo.h"
#include "AnyDocument.h"
#include "TDocStd_Document.hxx"

CDocUndo::CDocUndo(CAnyDocument* pAnyDoc)
:m_pAnyDoc(pAnyDoc)
{
	m_pAnyDoc->GetStdDoc()->NewCommand();
}

CDocUndo::~CDocUndo(void)
{
}

void CDocUndo::Commit()
{
	m_pAnyDoc->GetStdDoc()->CommitCommand();
}

void CDocUndo::Abort()
{
	m_pAnyDoc->GetStdDoc()->AbortCommand();
}

void CDocUndo::Do(bool bRedo)
{
	if(bRedo)
		m_pAnyDoc->GetStdDoc()->Redo();
	else
		m_pAnyDoc->GetStdDoc()->Undo();
}